package de.fhbrs.fedora;

import java.util.Map;

/**
 * XMLParser
 *
 * This Interface is for any implementing class, 
 * which wants to use the following features
 * 
 * Features:
 * - Get the text of an element
 * - Generate a new XML file (byte[])
 * - Add a new element with text
 * - Change the text of an existing element
 * - Delete an element
 * - Get all elements with its values (text) back  
 *
 * $Id: XMLParser.java 156 2007-11-27 09:35:27Z andreas.moser.bm $
 *
 * @author Andreas Moser
 * @version 1.0
 * @date 06.11.2007
 *
 */
public interface XMLParser {
	
	/**
	 * getAllAttrVal returns a MAP with attributes and its values
	 * e.g.: <creator>author</creator>
	 * The values in the Map will be attribute: creator and value: author
	 * @return Map<String,String>
	 */
	Map<String,String> getAllAttrVal();
	
	/**
	 * generateXML will generate a byte Array which represents the new XML file
	 * @return byte[]
	 */
	byte[] generateXML() throws Exception;
}
